{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Vendor:  Continuum Analytics, Inc.\n",
      "Package: mkl\n",
      "Message: trial mode EXPIRED 2 days ago\n",
      "\n",
      "    Your usage of mkl is now out of compliance with the license agreement.\n",
      "    A license for mkl can be purchased at: http://continuum.io\n",
      "    \n"
     ]
    }
   ],
   "source": [
    "import pandas as pd\n",
    "import nilmtk\n",
    "from nilmtk import *"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/Users/nipunbatra/git/nilmtk/nilmtk/metergroup.py:76: RuntimeWarning: Building 119 has an empty 'appliances' list.\n",
      "  .format(building_id.instance), RuntimeWarning)\n",
      "/Users/nipunbatra/git/nilmtk/nilmtk/metergroup.py:76: RuntimeWarning: Building 151 has an empty 'appliances' list.\n",
      "  .format(building_id.instance), RuntimeWarning)\n",
      "/Users/nipunbatra/git/nilmtk/nilmtk/metergroup.py:76: RuntimeWarning: Building 17 has an empty 'appliances' list.\n",
      "  .format(building_id.instance), RuntimeWarning)\n",
      "/Users/nipunbatra/git/nilmtk/nilmtk/metergroup.py:76: RuntimeWarning: Building 196 has an empty 'appliances' list.\n",
      "  .format(building_id.instance), RuntimeWarning)\n",
      "/Users/nipunbatra/git/nilmtk/nilmtk/metergroup.py:76: RuntimeWarning: Building 30 has an empty 'appliances' list.\n",
      "  .format(building_id.instance), RuntimeWarning)\n",
      "/Users/nipunbatra/git/nilmtk/nilmtk/metergroup.py:76: RuntimeWarning: Building 48 has an empty 'appliances' list.\n",
      "  .format(building_id.instance), RuntimeWarning)\n",
      "/Users/nipunbatra/git/nilmtk/nilmtk/metergroup.py:76: RuntimeWarning: Building 59 has an empty 'appliances' list.\n",
      "  .format(building_id.instance), RuntimeWarning)\n",
      "/Users/nipunbatra/git/nilmtk/nilmtk/metergroup.py:76: RuntimeWarning: Building 62 has an empty 'appliances' list.\n",
      "  .format(building_id.instance), RuntimeWarning)\n",
      "/Users/nipunbatra/git/nilmtk/nilmtk/metergroup.py:76: RuntimeWarning: Building 65 has an empty 'appliances' list.\n",
      "  .format(building_id.instance), RuntimeWarning)\n",
      "/Users/nipunbatra/git/nilmtk/nilmtk/metergroup.py:76: RuntimeWarning: Building 7 has an empty 'appliances' list.\n",
      "  .format(building_id.instance), RuntimeWarning)\n",
      "/Users/nipunbatra/git/nilmtk/nilmtk/metergroup.py:76: RuntimeWarning: Building 95 has an empty 'appliances' list.\n",
      "  .format(building_id.instance), RuntimeWarning)\n"
     ]
    }
   ],
   "source": [
    "ds = DataSet(\"/Users/nipunbatra/Downloads/wikienergy-2.h5\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "elec = ds.buildings[10].elec"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "MeterGroup(meters=\n",
       "  ElecMeter(instance=1, building=10, dataset='WikiEnergy', site_meter, appliances=[])\n",
       "  ElecMeter(instance=2, building=10, dataset='WikiEnergy', appliances=[Appliance(type='air conditioner', instance=1)])\n",
       "  ElecMeter(instance=3, building=10, dataset='WikiEnergy', appliances=[Appliance(type='sockets', instance=1)])\n",
       "  ElecMeter(instance=4, building=10, dataset='WikiEnergy', appliances=[Appliance(type='spin dryer', instance=1)])\n",
       "  ElecMeter(instance=5, building=10, dataset='WikiEnergy', appliances=[Appliance(type='electric furnace', instance=1)])\n",
       "  ElecMeter(instance=6, building=10, dataset='WikiEnergy', appliances=[Appliance(type='sockets', instance=2)])\n",
       "  ElecMeter(instance=7, building=10, dataset='WikiEnergy', appliances=[Appliance(type='fridge', instance=1)])\n",
       ")"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "elec"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df = elec.dataframe_of_meters()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>(1, 10, WikiEnergy)</th>\n",
       "      <th>(2, 10, WikiEnergy)</th>\n",
       "      <th>(3, 10, WikiEnergy)</th>\n",
       "      <th>(4, 10, WikiEnergy)</th>\n",
       "      <th>(5, 10, WikiEnergy)</th>\n",
       "      <th>(6, 10, WikiEnergy)</th>\n",
       "      <th>(7, 10, WikiEnergy)</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>localminute</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2014-01-01 00:00:00-06:00</th>\n",
       "      <td>197</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>4</td>\n",
       "      <td>18</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2014-01-01 00:01:00-06:00</th>\n",
       "      <td>199</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>4</td>\n",
       "      <td>18</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2014-01-01 00:02:00-06:00</th>\n",
       "      <td>112</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>4</td>\n",
       "      <td>18</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2014-01-01 00:03:00-06:00</th>\n",
       "      <td>104</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>4</td>\n",
       "      <td>18</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2014-01-01 00:04:00-06:00</th>\n",
       "      <td>104</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>4</td>\n",
       "      <td>18</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                           (1, 10, WikiEnergy)  (2, 10, WikiEnergy)  \\\n",
       "localminute                                                           \n",
       "2014-01-01 00:00:00-06:00                  197                    0   \n",
       "2014-01-01 00:01:00-06:00                  199                    0   \n",
       "2014-01-01 00:02:00-06:00                  112                    0   \n",
       "2014-01-01 00:03:00-06:00                  104                    0   \n",
       "2014-01-01 00:04:00-06:00                  104                    0   \n",
       "\n",
       "                           (3, 10, WikiEnergy)  (4, 10, WikiEnergy)  \\\n",
       "localminute                                                           \n",
       "2014-01-01 00:00:00-06:00                    0                    0   \n",
       "2014-01-01 00:01:00-06:00                    0                    0   \n",
       "2014-01-01 00:02:00-06:00                    0                    0   \n",
       "2014-01-01 00:03:00-06:00                    0                    0   \n",
       "2014-01-01 00:04:00-06:00                    0                    0   \n",
       "\n",
       "                           (5, 10, WikiEnergy)  (6, 10, WikiEnergy)  \\\n",
       "localminute                                                           \n",
       "2014-01-01 00:00:00-06:00                    4                   18   \n",
       "2014-01-01 00:01:00-06:00                    4                   18   \n",
       "2014-01-01 00:02:00-06:00                    4                   18   \n",
       "2014-01-01 00:03:00-06:00                    4                   18   \n",
       "2014-01-01 00:04:00-06:00                    4                   18   \n",
       "\n",
       "                           (7, 10, WikiEnergy)  \n",
       "localminute                                     \n",
       "2014-01-01 00:00:00-06:00                    3  \n",
       "2014-01-01 00:01:00-06:00                    3  \n",
       "2014-01-01 00:02:00-06:00                    3  \n",
       "2014-01-01 00:03:00-06:00                    3  \n",
       "2014-01-01 00:04:00-06:00                    3  "
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "%matplotlib inline"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x11366f510>"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x111e751d0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df.plot()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import pandas as pd"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "array1 = np.array([1,2,3])\n",
    "array2 = np.array(['a','b','c'])\n",
    "array3 = np.array([1.01,2.02,3.03])\n",
    "df = pd.DataFrame({1:array1, 2:array2,3:array3}, index=('array1','array2','array3'))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>1</th>\n",
       "      <th>2</th>\n",
       "      <th>3</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>array1</th>\n",
       "      <td>1</td>\n",
       "      <td>a</td>\n",
       "      <td>1.01</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>array2</th>\n",
       "      <td>2</td>\n",
       "      <td>b</td>\n",
       "      <td>2.02</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>array3</th>\n",
       "      <td>3</td>\n",
       "      <td>c</td>\n",
       "      <td>3.03</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "        1  2     3\n",
       "array1  1  a  1.01\n",
       "array2  2  b  2.02\n",
       "array3  3  c  3.03"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "import scipy.io as sio"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "sio.savemat('/Users/nipunbatra/Desktop/abc.mat', {'struct':df.to_dict()})"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "scipy.io."
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 2",
   "language": "python",
   "name": "python2"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.11"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}
